{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# User's Guide, Chapter 23: Roman Numeral Analysis"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "F major is a chord that has the notes F, A, and usually C.  Those notes, placed in the same octave, instrument, dynamics, etc., should have basically the same acoustical properties each time it's played, but human perception of this chord can seem to vary dramatically depending on the context the chord is placed in.  One of the most powerful contexts that can give the same isolated sound remarkably different meanings comes from its surrounding key.\n",
    "\n",
    "Roman numeral analysis is a way to identify certain similarities in tonal music (whether classical, folk, or popular) that have traditionally been assigned to different chords that appear on the same scale degrees in different keys."
   ]
  },
  {
   "cell_type": "raw",
   "metadata": {
    "collapsed": true
   },
   "source": [
    ".. note::\n",
    "   For a basic introduction to Roman numeral analysis, see \n",
    "   the strong `Wikipedia article <https://en.wikipedia.org/wiki/Roman_numeral_analysis>`_  \n",
    "   or, for a quick review, the great PDF cheatsheet \n",
    "   at `\"Learn Music Theory\" <http://learnmusictheory.net/PDFs/pdffiles/01-05-02-RomanNumerals.pdf>`_ "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Let's create an F-major chord but convert it to roman numerals in a few different contexts by creating different key objects.  First the setup:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAS0AAABuCAYAAAByWEWYAAAACXBIWXMAAB7CAAAewgFu0HU+AAAR\nVUlEQVR4nO2dfZQdZX3HP5ssgYTAJgYMhJBEITSmEEHelGgbUbEoilptUVqLhR5rD5VYrG+t71TF\nt9CqFQUOPS1YbEWi1Eq0YK2QQHsaQF4CBsy1iiwGyCbLBje7ye0fvxlmdu683Zln7ty99/s5Z86d\ne+eZeX5zd+d3n+f3/F6gc5wObAfGgJUd7FcI0UMMdKifPwKuBAa99/cDJwFPd6h/MZUlwDHAocB+\n2I/JncBwnUIJ0S2cA+wFmpHtE3UK1YfMAz4MbKX1b9EE9gE3As+tS0AhuoGTgXHiH5JxYEV9ovUV\nFwI7iP87RLdhYFktUgpRM0PAT0l/QG6oTbr+YB6wnnzKKrxdX4ewQtTNOrIfjn3A8XUJ2OMsADbT\nvsLyR8EHdF5kIepjObCHfA/Iv9QkYy8zB7iLYgrL3xZ3XGohauRqsh8K38YyASyqR8ye5XLKKay9\n2KqiEH3BIpKN701sBPZZzN7yqPfZR+oQdJpzOLAzZhulnMLylVbctf+qI3cmRIe5mOSH4RHgtFDb\na7zPt3VYxl5gEeWVU7vbRztyZ0KkMJjdpG1en/D5g8Aapjow/g9wLrbE/iJgUwXy9CqPY1EGUT4H\nnFDiusPABcDumGONEtcVois5AJik9Rd6G/F2q9NDbS7rkIy9zm6Kj6QmgBd3XmQh6uMk4m1YJye0\nPyrU7oFOCNgHpNkTsxTWG2uQV4haOZfWh+FDKe3nR9oeUbWAfcAu2ldYI8Br6xBWiLq5kFbD++yU\n9vtH2v9+1QL2Ab/AnHbzKqzbUNiOmEbMcHy9gyLvLyU9k0NUof2mW3H6kklstPVwRrvNwBswG1aj\nYpmEcIbr1cNwqps9mEtDGgdH3j/PrTh9yyQWjH4WtthxJDb6egzYAnwXeKg26YQogWultS+0/33g\nyYz2yyLvFzqVpr+ZxIKl19ctiBAucT09nAjt35aj/bGR90MOZRFC9CCuldavQ/ubc7Q/NfK+CmdX\nIUQP4VppjYX2H8vR95mRz3a6FUcI0Wu4Vlq7QvsjGW1/C8tRHmaHW3GEEL3GIHCVw+sdFtr/LOkj\np7i4uSWO5elHFmBpZfQ9il5iEBtkfXsQS4nsip3Aq7z97ZijYxzzMQUV5QHH8lTJ67D7/THwBJZq\n5zgskHlLjXJNYn/c6fI9CpGHczGXqKbrC+9PUHnnTSnt/ol47+xlJfo+EHgppjTjFKJLTqU1bs/f\nv6XivrNoYIpTiF7Cr3Xwcdc2rXEC7+rfSGjzAkxrRtlMOc/sV2AK4ztYepYqeX/kfXjV0/V3KoQI\nUcUDdrf3GvXBApgJfJX4IrHXlex3ImHfNStRcLEQtVGF0rrDe31hzLGLgBNjPh8FrijZ756Efde8\nl85V5hZCRKhCad3uvS5l6mriKpKrSn+ZbBeJLMKjq6qU1hLgzRVdWwiRg6qUlu8Z/9ve62zgnzFD\nfZRhkpVZO4QVVVXTw3dj7gTDWQ2FENVQhdIaJ8j1fob3egVmC4pjLW484aseaR0CnA/8G5asME+Y\nkhDCMVWtdP2H93oG8C7iVwsBbgS+7qjPqm1a78SKoH4Sy2axtYI+hBAZVKW0vuu9LsY84+PYjlV9\ncUWVq4dzsaysPwI2Or62EKINqlJad2KFWNP6uAD4lcM+qxxpvR3z4r/U8XWFEG1SldJ6NumjnXXA\ntx33WZVNaxbwF8A9mOOqEKJGqshfNRtTSEmhNBuB91TQb1Wrh2/FajZWIbMQok0GgPscX/NIWgtc\n+ExigbyTjvsE87b3Q4eGyU71nJejse/pIaYGay6mNcc9WLHUhqO+i7AcG0E/mNJmFuZ+Mojd2yRW\ngKTKSAIhyuDrlQ2D2KqYKy4i2bVhHFtJ/InD/sLMIZhyXoe5JpTlUMy/7G+xlc4wfw2siTnnIWw6\nWRfXYqPd6N91LlZ952XE15dsYtEMXyKwRwrRLXwMOA3HBVneRXp9vbe67CyG2aG+3ubwustJjpWM\nu8//dNh3ERq0Znm4EEuwmKcO4jCqgyi6D+dZHs4i2bXBp+qpR1UuD1upIIdPh5iH/bG/4O3nYSHV\nZ8kQojAulNYKbEqSdC3fQP4aB32lMUmgXKoMmJ4uLMBS9Zxd4NyzgAPciiOEG8oqrXnAt4g3SOMd\nu8TbP8NBf1n4I6yo0pqJ2XT6hQHgZuCEgufPwsKWhOg6yiiRmZiR+piE47djGRF8g/gC4KQS/eXB\nV1YTwOFYyM0W7/0olv75fZjsvcwc4PklzverUQvRU3yKZGPuVoJf6gHM870JfLBimZ70+rkKU1JJ\n8n3NQV/daoh/hHwG97Ttno5LLUQ6pQ3xa0h2tnwSq2for2A1CQKoX16wv7z4I60/xmwyn8dy1V8W\nafdm4LySfe2X8Hndo7gDHVxDlXxETzEI3Ev8L/Q+WguwgqV0aWK+WnMqlO3nIVmihTWixTQeKNnX\n7cR/Bw+XvG5Znqb4CKsJbCPZOViIunhmpFXk5HeS/A9/ScI5y0JtXlmk05w87PUR58D6ElrlXVCw\nnwWYAk76Hp5b8Lou2JMiV9Y2Aby48yILkUnh6eEhwEcSjv0Q+HDCsQZBHb6XttlnO/irh/fGHIsb\nWeX1XYryPmyFLYkPFLyuC4r6lE1i0+ZbHcoiRO1cTvwv9ONYUHEaV3pt78hoV4Yfe31cE3NsMa1y\nF3GD+DNsGpw1ankP9RTA2JVDtug2gioMie7mmZHWIMk+VlGWYbapOC4Gnsq41u3e+ScCJ2O2lxHs\nIXPFPu91vxhZXhR5vwlz+chz/4uw0dXJJMdWRrkUu99NwKdJrrbtmqcwZZxXYd6B5Tb7P/L/LwjR\nafyMNDMHKD6dEEKITnPrIPmmSDOwVaWo4XoMKw0W54g4iGV9WItl/czDGJZl4DPYSKxdvodFgn+d\nqaPC04ANBKOPa7FspEX5AK12q3GmVhv6JbAaSyvdSe7H/qbLsIK5xxDY7nZhAdFbapBLiDJch4WX\n/VfeE15AvC3kQwntFwG3JZyTZ9sKHNfePQHmD9bEPPV95hMEPTeBm4gvZdYOf0e6/LswZV4HDVqz\nPAgx3Wl79XBNzGdjtDptgqVavgUb3RTlaCzD6UvaPM9fPfRX9g7Ccmwd7b1fh2nr8RKyQfrIcRJ4\nI7YoIIRwTF6lFVfi/jpajegDwDcIMoiWYS7w71gWibz4HvHzsRQrP8D8jsaAc7DkfC6yph6Zcuwd\n2DRVCFEjd9M6BYpzQnxHTLvwNoaNhprYKlce1wHfRpOHb3jnDGM2uCZwF26UqM8MkuMa/8ZrcwSm\ncKv0/k+igaaHovdo2yP+CaY+nI/SOkobxJbNow/yTuxhXuWdcwuBL9VczNn0akyhJSmuy3PK+bXI\neV/EfV6olQkyXktg6Pf92doZJbqigZSW6D3aVlrR0JCvxLR5Na0P8s2YjSvMJwlGUGGWYkVe4xTC\nBHBUDjmvCp3zmRztixA3mvwhgR3tOIKEhFJaQrihbaXlT+n87Q9j2nw+0mYj8aEur/eO76U1I8EA\nZtyPU1xX55DzTCzLxNVUl23hpohcWwgM87OBzaFjUlpCuKFtpTXC1Af16Jg2G5g6MkpKDnhEqN3q\nhDZx4UIj1J/25WCmBko/BjzHOzab1pGilJYQbmjb5SH8EDQxI3eUcHreDSSXCnsEc7wE8/+KYy2t\nLgNDwPHpYlbO+QSjx91Y3vtt2NT4buB3apJLiL4hr9IKK6lRbGoXJVwBZ2PG9f7be01SWr8G/jLm\n87ocNsFGeRd5+/uAc7H7WIr5gi2vSS4h+oq8Siuc6iUpwDkcEDyacb27vNc0JfQ94M7IZ3UWWzgf\nU1BgNR7Xe/vLqL5ghxDCYxCrkpPF7tD+UMI5I6H91aSXZfc5DptS7Us4fj9TK8qcmNB31QwR1HW8\nAcvN5cuRpnhXA0sqlCuO2ViWi7Tv6dmYbXEI+x/YiVXu3VG5dEIUw/dCeNYA+cJNBjGjsu+HdB+t\nimZ/AuP706SXr96PwEj9E5LDag5iarXj7ZjjaKdZjK0Q7gJ+Fjl2IMmZStPurSpWYCO/qEvJTCzg\nfT7JCQxHMXuj6kaKbmMpthC2oZ2TbiZYFTs9R5usuEG/cs45KW2igdp1ZAQ9FVPQd2CjmChrSHaK\n7ZbVwwuxUVRW9IEfTbCsM6IKkZtC6ZavCO0nZbn8IMEI7Cps+pGEb9dKy+YQ/cWPjnKq5gDM56uB\nrRQWSZdTJ/OwP/YXyJ9aeiHwucokEqIk7Sit67EwHTDn0rhSVRuBj3n7yzFjetQj3meL9/q8lD4X\nRt7fly2mU9Z5MpyJ1W6cTizAQqbOLnDuWbgPfxLCCe0orQmCwhXPwjImxPFR4O+9/VMwD/FXxbTL\no7ROCe0/QWfTvZwHvA3z4M+zqNBNDGBT9ROyGiYwi3pXaoVwxgxsNNXEpkppCufdBOE/e4HDIsdf\n5h3bQ5D/OcpdBLaWSwtL3T5D2P09jlWnSdvuIdk+9L+Rtl/tgOwNytc+3EtyMVoh6qBU3cMVmAtE\nE1v6T7NbrcKyiV5PawhOOJwnzmAdDsAeBQ4vImxBZjB1UaHo9lPsO/K3G6m+Qs8jDuS+p2IZhWiX\nUkoL4C0E/+CbKF7F5SnvGq+JfH4wQT6sJubM2WlmYDGWx2Zsbyf54T+241K3xokW2dZ2XGoh0imt\ntMBWCv1/8gcpFmJzr3f+RaHPZmIjM//a36Ke+oF5OZ/kh/8VNchTdmq4DfOPE6KbKFxhOszHCVYK\nj8H8mP6c9mwhDe/Vz5U1BPwr8Abv/Y+wqsfNEnJWzStTjiX5s1VJmUwYk9jKcFYYlhDTmvOY+uve\nwIp/xrlERPmid87NwJ8CPw9d54ac16iTVbTmGgtv27GV1k4STp3TzjaBFeQQohtxMj0MsxIbaYUf\ngnHg+1hl5j/ApkqrsVXD12Hl5eOM3aOYTaWbp4Rg99wgWxncSqu/WZXsyiFTdBsh2WFYiG7AudIC\nUzK/hy3zF/mlfxT4FLaq2M1cjCX7i6agTttGMTtdWsiSK35BvoIh/nYbCtsR3c8zSmuAwGHUJYdj\nFXCWAofSWk1nD5ZZYBwLRm4ClxCfp6vbOBsLOh7D7uFJzPF1BzZNHsCmtfMxB8352GroHOBh2qiQ\nW5C1mDf7btKnpo96sjxAd9sMhQD7wV8BXDNAfJEK18wgMNBPEMQnzsNGZwD/gLILuOAtmLPuNVha\nnEXYj0YTU6ojWDhWUl40IbqRQWxA8J26BTmMYJqytGZZeoUGyhEvepi6M26GkwvKN0gIkUndSiuc\nIC8uV5UQQkyhrNI6A7Pq/wpTQA9invJ505qEs58qQFcIURmDmOE8zTcpumIYx4Ghc07JaCvy0UA2\nLSFaiCumGt3+Mcd1Dgm1T8tgKvLTQEpLiCmsIp/z4j6yawE+J9T+qIy2Ih8NpLRED1PEpvVa8oXY\nDGAhO2kcGdqfbumMhRA1UERpLWqjbVJ+eB9/dLUDZRYQQuSgiNIayW7yDI9lHPdTt2xJbSWEEB5F\nlNYvc7abBG5KOT6LIBdV7a75QojeZRX5sgd8IuM6F4TarqxK2D6kgQzxQrSwjfRVw8tIH8XNDV1j\nfaWS9h8NpLSEaOFPCJTU08CXMb+sS4Djc5z/Fe/cSeD5FcnYrzSQ0hKihZlMTfa3nvz2sfeGznt/\nJdL1Nw2ktISIZQm2OugroB+Q7g4xF/hSqH23V9mZrjSQ0hIikVXAzwgU0RgWk/i7wEnY1O/VwDpg\nONTuemz1ULingZSWEKksBL5JvhXFMWxKWKbMlUingZSWELl4IXAl5scVVVZbsBqJS2qTrn9oIKUl\nepiqbEpD2AhsAlNi4+nNhUMamP3wkJrlEKISBiu67k5vE0IIp9SdblkIIdpCSksIMa2Q0hJCTCuk\ntIQQ0wopLSHEtEJKSwgxrZDSEkJMK6S0hBDTCiktIcS0oiqPeFEfm4CD6hZCiKr4fwQHZDv3ArSc\nAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<IPython.core.display.Image object>"
      ]
     },
     "metadata": {
      "image/png": {
       "height": 55,
       "width": 150
      }
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "f = chord.Chord('F4 C5 A5')\n",
    "kf = key.Key('F')\n",
    "sf = stream.Measure([kf, f])\n",
    "sf.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<IPython.core.display.Image object>"
      ]
     },
     "metadata": {
      "image/png": {
       "height": 55,
       "width": 150
      }
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "kc = key.Key('C')\n",
    "sc = stream.Part([kc, f])\n",
    "sc.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<IPython.core.display.Image object>"
      ]
     },
     "metadata": {
      "image/png": {
       "height": 61,
       "width": 236
      }
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "kb = key.Key('B') \n",
    "sb = stream.Part([kb, f])\n",
    "sb.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Now that we have four different keys, let's create Roman numerals from the F major chord and each of the keys.  We will use a function from the :ref:`moduleRoman` module called :func:`~music21.roman.romanNumeralFromChord` (which we saw briefly in :ref:`Chapter 10 <usersGuide_10_examples1>`).  We pass to this function a `Chord` object and a `Key` object."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<music21.roman.RomanNumeral I in F major>"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "rf = roman.romanNumeralFromChord(f, kf)\n",
    "rf"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<music21.roman.RomanNumeral IV in C major>"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "rc = roman.romanNumeralFromChord(f, kc)\n",
    "rc"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "`Music21` tries its best to find a Roman numeral for almost any combination of chord and key, even if, like in B major:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<music21.roman.RomanNumeral bV in B major>"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "rb = roman.romanNumeralFromChord(f, kb)\n",
    "rb"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Each :class:`~music21.roman.RomanNumeral` object has some common properties, such as `.figure`, `.figureAndKey`, `.romanNumeralAlone`, `.key`, and `.scaleDegree`:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "('I', 'IV', 'bV')"
      ]
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "(rf.figure, rc.figure, rb.figure)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'I in F major'"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "rf.figureAndKey"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "('I', 'IV', 'V')"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "(rf.romanNumeralAlone, rc.romanNumeralAlone, rb.romanNumeralAlone)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(<music21.key.Key of F major>,\n",
       " <music21.key.Key of C major>,\n",
       " <music21.key.Key of B major>)"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "(rf.key, rc.key, rb.key)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(1, 4, 5)"
      ]
     },
     "execution_count": 11,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "(rf.scaleDegree, rc.scaleDegree, rb.scaleDegree)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Note that in the last case, the scale degree is the uninflicted degree -- the flat sign isn't included in the `.scaleDegree` tag.  For that, use `.scaleDegreeWithAlteration`"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(1, None)"
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "rf.scaleDegreeWithAlteration"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(5, <accidental flat>)"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "rb.scaleDegreeWithAlteration"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Or look at the `.frontAlterationString`, `frontAlterationAccidental`, and `frontAlterationTransposeInterval`"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'b'"
      ]
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "rb.frontAlterationString"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<accidental flat>"
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "rb.frontAlterationAccidental"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<music21.interval.Interval d1>"
      ]
     },
     "execution_count": 16,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "rb.frontAlterationTransposeInterval"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Of course, some RomanNumerals make more sense than others, so there's a `.functionalityScore` which returns a number from 0 to 100 as a rough approximation of how \"functional\" this chord is:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(100, 59, 0)"
      ]
     },
     "execution_count": 17,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "(rf.functionalityScore, rc.functionalityScore, rb.functionalityScore)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "As I hinted at above, `RomanNumeral` objects are `Music21Objects` so they can be put into Streams and showed:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<IPython.core.display.Image object>"
      ]
     },
     "metadata": {
      "image/png": {
       "height": 55,
       "width": 137
      }
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "s = stream.Measure()\n",
    "s.insert(0, rf)\n",
    "s.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Note that the spacing of the roman numeral is preserved from the chord that it was converted from.  If we create a `RomanNumeral` object directly, then it is created in closed position above a tonic note in octave 4:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<music21.roman.RomanNumeral I in F major>"
      ]
     },
     "execution_count": 19,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "rf2 = roman.RomanNumeral('I', kf)\n",
    "rf2"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<IPython.core.display.Image object>"
      ]
     },
     "metadata": {
      "image/png": {
       "height": 49,
       "width": 137
      }
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "rf2.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "It is possible to pass in just a roman numeral (\"I\", \"ii\", \"iii\", \"IV\", etc.) and a string (\"C\" = C major, \"c\" = c minor) to create a RomanNumeral object:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<IPython.core.display.Image object>"
      ]
     },
     "metadata": {
      "image/png": {
       "height": 61,
       "width": 153
      }
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "subDom7 = roman.RomanNumeral(\"IV7\", \"B-\")\n",
    "subDom7.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAWoAAABkCAYAAACvpXonAAAACXBIWXMAAB7CAAAewgFu0HU+AAAS\nlElEQVR4nO2de7QdVX3HP/dBkiuRJASBJhCCBghpCGkoAqbSiAVUVKBUiq9KF1SKpYKKIqxaW+uz\nWoIoS1jFarW2tjW8bUGMooWkgYJUgTxICUggIQFyk3Dz4Cb39I/fDGfOnJk5M+fsedx7vp+19jpz\n5uzZ8zvn3vnNnt/+PaA4TgE2A0PAnALPK4QQIgUfAIaBmtceBQZKlUgIIcQrnAfspa6k/fb5MoXq\nMvqAa4CLyxZECFE9jgd206yka97+2eWJ1lUcjv3mT5UtiBCiWkwCniBaSfvt5tKkG5sMAIdF7J+F\n/d7rixVHCFF1FpOspGvACDC/LAHHIDdhv+uC0H4paiFGMb05jXsE8Gcp+vUAV+UkQzdyYOhVCDEG\nyEtRXwXs06LPoPd6NjAtJzmEEGLUk4einga8J+HzYeDvsAWujUA/8MEc5BBCiDFBHor63cC4mM+e\nBRYBl2Mz6qXe/g/kIIcQQowJ8lDUZ8fsXw0cBywL7HvAe50JnJSDLCKaBcAxZQshhEiHa0U9ATgx\nYv+TWAj5xtD+XwW2/9CxLKKZ/YFVwIPAL9DagBCjAteKei4WBRdkGDgXM3uECQZgvMWxLAKmYNGI\n/+K9HwCO8rb7MMUthKg4/Y7HOypi32epmzjCvBg6djrwjGOZupGTgT8GzgTGlyyLEKJiXEJjQMsz\nJCdfGh/qL/NH+5wIrKN1kFGwzS1FUiFEJlzPqF8dev8lYGdC/7AS/0234nQFxwPfJnvq2K2UE6k4\nC1vIPBi7UW/AFpifLkEWIbqSq2hMutTKBjqDxhnev+cq3djkatLPoEeA/8KefF5ToIyTgU8DjyfI\ndTvw2gJlEqJr+ST1i++OFP1PpvGC/Xl+oo1ZvkprBf0i5eX6uATYkkLGGuYVNLMEGYWoNK69PoYD\n2/el6B+2kU5yKEu3Mwj8A/B7RLtM5s1k4Bbga952Gg7ColaFEAFc26h3BbYfStH/hNB71/J0A7WI\nfVdi2Qt3e+9nFScOAFOBu4HfauPYt2P++LtadRSiW3A9ox4KbD+X4txvDe3b6lacruBebDHuE9QD\niB6mrqSL5lVYaoB2lDRY+oED3IkjxOjH9Qx2W2B7MLaXcTLNC1pb3IrTFfzAa2B+02VzNXBsB8eP\n0PomL0RX0Q980+F4Bwe2v0LyDPmUiH0zHMvTbfgmjo8A7wrs3897nULnv+9+3jgDWHTjDmAT9jS1\nP3BWh+NvBa7vcAwhxgrjwBT1Ew4H3Qq8zdveTLyXwRRMKYdZ5VieLJyFyf9L4AVsAewY4HlgZUky\n+eahzcD9Kfr7dt0NNP6OU73XPbT3+04A3oDNlKdGfF4D1uDG3LKc8v4HhKgaf0UOa3fjqVccf1dC\nv+8S7Z4107VAKTkhJMdwYPsnJckE2YvS3uv1D+dN6aQUVxb3uj0p+8W1dTQHTQnRzewCaq4XE3dj\nmfIgOu8HWIrN90bsfyhwbNFcGXofvIPlVQUnSFxR2r7Qa6eMAy7CPDJuJj5vOLTnXteJnHuA9wPb\nOxhDCJESv8Dq9yM+6wP+h+jZ1MeLEjDEHGwBK26Wd08BMrgqShs1o+4FziP6u8WFnU/FbpydzI6z\ntGHgD1J+RyG6iVxm1AArvNeoIItLseIBYbYDf5+DLGm4AiuyWyZ5FKU9HvOlXk89zWmYqL9/p+51\nWdkKnEPdc0UIUQC/S32mFPQCmYd3d4hoXypYRp8ZwMsxMhU5o3ZlW/bH8UPGW7Wo7HnXpzzWRbsP\nhYwLkYSvM50zHsuYV6OetnQAeJToi3UD5YWOXxuQYbQq6gnA+cB/0rgImqaFIxbnZzw+qu0C1rbo\n8yBWsq3sJxkhqs4uoJZHyPZuzMXqTcBpwL9iZo04e+hllBOReABwAZY86kysuEHYRjwa+BhWnCEL\nTwFfxxRqkIsdyLMRmA2cDrwRKwYxgrkYrgF+jNzvhKgEfrrTp7Hgi7iZ1W1lCQh8xpPhDd7771P9\nGXVUUdo02fP8thU4lfiZ7MoMY8W1uGo+Qojs5Gb6AFuI8i/cvURf0Jtwu3iWhYmYHTeYVrXKinoH\nFgxUw9zYgkVpkxT1HswkcjmtTSh452lXQftml//O8L2FEMnk5vUBVuF6g7cdd44LMWVdBhdh0ZFl\nLWK2otOitKux3OAzsMjGW1Ked6h1l0j2AO9r81ghRAvySit6II25qcMspjyzxzjgo1imuR+WJEMc\n7RSlfcl7XY8p9KmY3f/ONs5/N/DujMdsBf4I+I82zieEKIkB7PE37hH5PsrNO32hJ0c4OrIs00en\nRWmnYgq+l87d/I7AMiCmlSPoXtePTB9CuGYXUOvB3OZccijx+Rr8pEB7HJ8zC7OwxTTfhcznEOpZ\n5oLsIJ/Q9olYRZO0M2efEaz24N6Iz2ZiASu/pj7TBnuKmIX97mtajD+AeWokhZfvwrw4guHePcDR\nmGvmuoRjx2Hfud87Zo93TNITmBDdytFATz/wYYeDXkq8G95uzAOklaLIk0OBb2ELcLeHPvsLYFHE\nMWsxU4lrFhOdQTCKGnZDvQf4KfHujF/FKrl/g0bvi+nAP2I5wtP8vXuxTHlHYfbwGjbT3gA8QvTa\nQh9wF3ZTC59jIvD7wJs9WcLUsIjW66ivbQghzBlgH5cDJrnh1TA7ZhU4gmj3tKJNH8tjzhdsWYvS\n5pE9Ly1xpg8VtxWifZx6fbwdKxSQRFUebR8nR79EB5RdlNYVKm4rhCNcKOrZwPcSxnrZe32Hg3ON\nJaJuFldi+VEuwBIjjTg61xbsRllUiaupWB7vdkqD+cVthRAenSrqycCtRC/C4X3mhzef5uB8Y4kl\nFFeU9gXMpBBV/sw1vai4rRCVoQ8zdMfZG5djHgTBKMXXlyJpOqocmZjWtvwzr/+p7kRLjW+jfo72\noxtrmDeL08UTIUYxHduoP0ezYvFZi5k6dmKzxM3e/tM7OJ9ozdVYRsAVrTrmSKdpAR6jOusZQlSC\ndhX1IuyRPYoXsbDl5733NSxjGtgCWVWJm8W5KoNVBLdiLpLbyhakA1SFXogQ7SjqfixFZpSLWw3L\n+RBOn7nUez0RC8ioIlH+vdCYAEnky5NIUQvhhA8Tb1+My4s8M9CniuaPqdgiXtz3em3O529lo95E\n+qK0ZeHbqNttw8DvFC61ENWmrTSnBxBf5ukeks0E/+f1+2LWkxbAl0lWIjfmfH5XRWnLpBNFreK2\nQkTTlqKOq6f3PK1NBDd6fctc6IriQyRXIffbJ8ivdFRQUftFaZ9NkCWq1mHZtKuoB4F3liCvEKOB\nV5IyxflAh5mJ1bqLynx3PvZInsS5WEmuvcBJmEfIIOUsfE3D8jUfT7bZ6RrM7fBvqHuyuOAuzH4/\nSLoovpMw74gq0Y/5a+8l/QLsKqzSzjIsKEcI0cgmYHwPbUyrhRBCFEcPsG+Kfr1Y6sqpof1DwDyi\nQ5P7MVexy7CKJWkYwjKofRmbcRfBVV4LspvG9KPPAgtxO4v+DpZRLgu/Bm7AsuRVjX7sieABLEve\nXOBIzJ/+bVjwUys2YUWRn8pJRiFGGy+QIRXyAqLti38Z038allS+3cWlx2ku4poX17aQZRt2M3JN\nmux5fmtVlLYKhLPn+UmZsv7tlxQqtRDVJtNi4kdpvqBeItq+fSD1QqydtO3AGzN/rex8N0GGYSxH\nSR4kKeqsRWmrQFBRTwUeor2/+26UlEkIn0yK+t9ovqCiXNZ6sMrenSrpoLKenfWbZeSehPNfmON5\noxT1KuAK6h40ReSRdoWvqO/H0gZ08nc/pGDZhagqmRT1/9J8MUUFJ1wc0S/YhrBZqj8jT+MW9xhW\nISQPerGbQdR5P+f1mY4VbnUdUekntHoac2+sUU7Cf1coKZMQ7smkqF+g8WLaQHP4eT+22BW+8LZi\nSm+ed8xPvP3/hCngN2HlsYYijvXb9dm/XyrmxJzve9Ttwb7vuOuZ/XTcFaWtAp1GJvrtV+GBhehi\nMinql2m8mG6I6HMGzRfdUpqzqX2B+kw5yGHEp00dBl6XVtgMRD0B/Ix6iPYxmL04D0UdRIq63i4r\nWnAhKkwmRe2bK/z2/og+V4f6LCM6J8XZ1B9xw66BPcA1RF/A30orbAbuDJ1jJXVXwgEaF8SkqJNx\noajXEV/BXohuJJOiHqTxgpoV0eeuwOfDmA9tFNMD/RbG9IkKVR/EbcrR/WhMxPQccLj32QDNs3sp\n6mSUlEkI92RS1GupX1AjRCvMBwN97mgx3jNevz+P+XwC0QuYx6UVOAXBqulD1KvPnIGFiofPLUWd\njJIyCeGeTBVe1gW2t2NmizDBqhzLWox3v/e6IObzXcDHI/a7Cjzpw6ImwW487/VkOgy4DTjC0Xk6\npeiitGWwFTgH+EHZgghRVdIq6kcC23FJlIKzvu0txnvYe01SvD8CfhHa56ro6QWYUgabWd/ibc+k\nWgV4iyxK64qom3gcy4D52M1RCBFDP+ki73YEtifFHDMY2F4IrE4x7jHY4/5IzOeP0VjN+riYc2dh\nEvAVb/tmLMjEHzPpxrEQmNHhuePwIzznE/9bVB3fHLYeW0T+jYS+a4F/xhT1kcSvZwjR7fSCeVn8\nMkXnfsxG6/sWP0qzQhlP/YLbSXM5riD7ULf5rsEW9aJ4NTaj9NkMbEwhbxKHYJ4d22hO/rMv8dVc\nkuTslAHs99vG6FXUPVgiph3AE9jfbiL14JVh7Pfbjrl7CiFaM5eMOX6WUl/8iXsUD/ZplafDrxRz\nXkKfcDKocJa7rJyAKcIVRGdzW0T8glfeoeyjnXBSJiFE52RaTARL+u8TV5HjU9RnhN/EzAxx+Hbq\npCx54ZlXJ+kvJ2C+2E9iqTeLSqMqhBAdkUVRL8FCxMECXqLyWC/DKnaAeU78iObIRJ+V3uvRCec8\nKPT+0dZixrLYG++tWN5jIYQYk5xP3RTwqYR+1wX6rccSx4e5hHo0YBxXBsZ5nvY9Ms7HHiFObtFv\nETJ9tItMH0K455WaiVnwEwid5A2wgHhFezmW16MfM4dMp3Eh8M3Aj7FFpldhOTXCPAwc623/LZYC\nNCsDmD18CPPwSGIS8YVjH6LRXPIY8ME25Bmr9GN/yxVY/UchROfsIkOFlyCzsZX9Gqb4kuzQ8zBl\nvITmaMZgKHnUbDWY5Gk7ye5eSfTQuMjZbnsC+75+u51qV1wpGs2ohXBPphDyMO+hrsCWk76SeZiX\nvDHeEdq/HxYN6Z/jI22O79OLhWPPbdEuIl5Rx820hSFFLYR7OlLUYDZqX4mtpr3w7ke84y8N7OvD\nZuD+2LdS3Mz1AuIV9akFyTBakaIWwj0dK2qAv6auyHZiSZayVOe4wzv2Wu/9JOCmwJg/x31llSSi\nSo757QsFyjEakaIWwj1OFDWYR8VO6grtSazWYJT7Xpive8csBf4UK0vlj3NzyjFcMY/mvNvBthnY\nv0B5RhtS1EK4x5miBitptYJGxbYbuBv4JPA+zHSwEPP2OAv4ENGLfNuxKh9FLtTNwW4wrRYU76XZ\nt1sYUtRCuMepogZTrOfSmJc6S9sAfBHzBimKj2EFAsKlxpLadsyGnhT63o1IUQvhnl1ArR/4tOOB\nbwMeAI7CUom+huYq4i9jeYh3Y0mSaliI+l7MbFIUZ2IJmtZ48ryIpRbdgplzejDzyxQsxeoUzCPl\nOGAy9h2F4QcjTcf9/5QQ3UofmCKKKlTrml4as6j5+UAmY7NwgG+jrGqjmV7sJruJen5vIURnZHHO\nyI2DqZsUDitZFtEZMn0IkRNlVzMJFiRQ9WkhhIigbEUdTMQflR9aCCG6nk4V9WmYPXITpnRXYxGL\nE1IeH6xmUglbjBBCjBX6scW/JH/jsKdHFPsGjnl9HoKKwpCNWoiKcT2t/Y2/k2KcAwL9kyq9iOoj\nRS1EhZiHmSxaKeoRrMpLEocH+r8uJ3lFMUhRC5ET7dio30m68O4eLFw8iUMD2yqPJYQQEbSjqKdl\n6BtXL9HHn0VvwUKzhRBChGhHUQ9m6Ptci89P8V6T6iYKIURX046ifjZlvz3AnQmfjwNO97Z/2IYc\nQgghYphHuixzn28xzoWBvnPyElYUhhYThagY60j29riG5Nn6xMAYSuAzNpCiFqJi/AmNJbi+gflN\nfxaYn+L4G7xj9wDH5iSjKBYpaiEqRh+NBQJuIb29+4rAcVfmIp0oAylqISrIDMyrw1e6PyXZdW8i\ncF2gf5HVxUX+SFELUVHmAU9RV75DWA6Qc4DfxswaZwCLgY2Bfkswrw8xdpCiFqLCHATcRDpPkCHM\n3NFXiqQiT6SohRgFnAjciPlZhxX0SuAzmLlEjE2kqIUYZUwCjsSSLo0vWRZRDL6iXl62IEKMNfIy\nQezGqnkPYpXFxdhnBCutdhuwqmRZhBhT/D88JuOLq5cCJAAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<IPython.core.display.Image object>"
      ]
     },
     "metadata": {
      "image/png": {
       "height": 50,
       "width": 181
      }
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "e65 = roman.RomanNumeral(\"ii65\", \"E\")\n",
    "e65.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "For these romanNumerals, there is information after the `.romanNumeralAlone` this can be found as a string in `.figuresWritten`:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "('7', '65')"
      ]
     },
     "execution_count": 23,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "(subDom7.figuresWritten, e65.figuresWritten)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "These numbers can also be found as part of a more powerful `figuredBass.Notation` object (to be discussed later) in the `.figuresNotationObj` attribute:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(<music21.figuredBass.notation.Notation 7>,\n",
       " <music21.figuredBass.notation.Notation 6,5>)"
      ]
     },
     "execution_count": 24,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "(subDom7.figuresNotationObj, e65.figuresNotationObj)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(6, 5, 3)"
      ]
     },
     "execution_count": 25,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "e65.figuresNotationObj.numbers"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Many of these properties can be changed:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\nA0UKzMmel7XBAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<IPython.core.display.Image object>"
      ]
     },
     "metadata": {
      "image/png": {
       "height": 49,
       "width": 146
      }
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "rf.key = key.Key('D')\n",
    "rf.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Changing the key removes any information about pitch spacing.  You can't have everything.  :-)\n",
    "\n",
    "We'll put the key of F back and the original pitches before we forget:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "metadata": {},
   "outputs": [],
   "source": [
    "rf = roman.romanNumeralFromChord(f, kf)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## RomanNumerals as Chords"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "A `RomanNumeral` object is a subclass of a Chord object, therefore we can do everything with them that we could do with a chord.  For instance:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "True"
      ]
     },
     "execution_count": 28,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "rf.isMajorTriad()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<IPython.core.display.Image object>"
      ]
     },
     "metadata": {
      "image/png": {
       "height": 49,
       "width": 137
      }
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "rfc = rf.closedPosition()\n",
    "rfc.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\nuAAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<IPython.core.display.Image object>"
      ]
     },
     "metadata": {
      "image/png": {
       "height": 69,
       "width": 156
      }
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "rb.lyric = rb.figure\n",
    "rb.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "('major', 'major', 'major')"
      ]
     },
     "execution_count": 31,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "(rf.quality, rc.quality, rb.quality)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "1"
      ]
     },
     "execution_count": 32,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "e65.inversion()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[0, 3, 5, 8]"
      ]
     },
     "execution_count": 33,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "e65.primeForm"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "10"
      ]
     },
     "execution_count": 34,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "e65.semitonesFromChordStep(7)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "That's all we have for RomanNumerals for now -- we will return to RomanNumeral like objects later when we look at other Harmony objects such as ChordSymbols and FiguredBass and we look at the romanText module.  But we'll take a break from musical objects and get acquainted a bit better with how your system works when running `music21` with a look at :ref:`Chapter 24, Environment <usersGuide_24_environment>`. "
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.0"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
